// projecteuler.net - problem 8

import std.stdio;
import std.string;
import std.conv;
int basamaklarıÇarp( int dilim )
{
    int çarpım = 1;
    while( dilim >= 10 ){
        çarpım *= dilim % 10;
        dilim /= 10;
    }
    çarpım *= dilim;
    return çarpım;
}
void main()
{
    File dosya = File("sayı.txt","r");
    char[] sayı;
    int[] parçalar;
    int sayaç = 999;
    int enBüyükÇarpım;
    while( !dosya.eof() ){
       sayı ~= chomp( dosya.readln() );
    }
    while( sayaç >= 5 ){
        parçalar ~= to!int( sayı[ $ - sayaç .. $ - ( sayaç - 5 ) ] );
        --sayaç;
    }
    foreach( parça; parçalar ){
        int çarpım = basamaklarıÇarp( parça );
        if( çarpım > enBüyükÇarpım ){
            enBüyükÇarpım = çarpım;
        }
    }
    writeln( enBüyükÇarpım );
}
